Previously, memory dialing for telephones has been primarily restricted to simple telephone numbers where any delay between digits dialed was relatively unimportant. The number could be dialed at any continuous rate as long as it was within the telephone company's specifications. Accordingly, only the digits selected to be dialed were stored in the memory and later dialed at a constant rate. That is, no additional characters, such as pause characters, were included in the dialing sequence.
However, as more computer controlled services were connected to the telephone system, additional functions were required for automatic memory dialing in many cases. For example, banking or calling card access may require pause characters in the dialing sequence to allow time to access the particular computer controlled service. Further, other special numbers may require a delay to complete the dialing sequence. For example, when accessing a telephone outside of a local system, a "9" followed by a delay may be required to get out of a local system. Similarly, delays may be required at certain positions in the dialing sequence in order to cover speech synthesis for a voice-prompted paging system. Accordingly, some telephone devices having memory dialing capability have included a "pause key" which allows the user to manually insert a pause character at any point in the dialing sequence. When selected, the pause character represents a short delay (e.g. one second) that would occur during memory dialing process before additional characters would be dialed. Multiple pause characters could be linked to obtain a longer delay as required.
In spite of the ability of a user to manually insert a pause character in a dialing sequence, manually inserting pause characters is often difficult for more complex systems. Because it may be difficult to judge the number of pauses required for a particular dialing sequence, a long trial and error process is often necessary to adequately insert pauses. In some cases, it may be impossible to insert the proper number of pauses. For example, inserting pauses to wait for a far end pickup may be impossible because some systems may answer after a variable number of rings. That is, while a telephone system may generally respond to a call after a certain number of rings, the number of rings may vary depending upon the load on the system. Therefore, preprogramming a fixed number of pauses to provide a predetermined delay may not always be possible.
Accordingly, there is a need for a circuit and method for memory dialing which automatically stores pauses or other command signals in a dialing sequence based on upon the user's entry of the digits in the dialing sequence. Further, there is a need for a circuit and method for automatic dialing which is responsive to the called party telephone system to accommodate telephone systems which may respond to a call after a variable number of rings.